A processing block, such as a digital signal processing (DSP) block, is a block of circuitry, that may be separate from the general-purpose programmable logic of a device on which it is implemented. The processing block may be at least partially hard-wired to perform a specific function such as calculating a mathematical function. The processing block may also be partially programmable to perform a specific function such as calculating a mathematical function. The processing block may be part of an integrated circuit. Some existing processing blocks may not utilize their core arithmetic resources (e.g. adders and multipliers) efficiently. For example, existing DSP blocks may benefit from architectural modifications, such as improvements to their multiplier and routing logic, that would enhance their arithmetic capabilities at a relatively small cost in additional components.